use std::{io, process};

mod compress_img;
mod delete_err_img;
mod list_directory;
mod excel_copy;

fn main() {
    let tip = r#"
    ----------------------------------
    |   欢迎使用lingdu文件处理工具   |
    |  主要功能：                    |
    |        1. 删除错误Err图片；    |
    |        2. 压缩图片；           |
    |        3. 提取excel文件；      |
    ----------------------------------
    "#;
    println!("{}", tip);
    program_root();
}

fn program_root() {
    program_tips(); // 打印程序使用说明
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    //  判断输入是否为空
    let input: u32 = if let Ok(num) = input.trim().parse() {
        num
    } else {
        println!("你输入的选项错误，请重新输入数字选项");
        program_root();
        return;
    };

    println!("你选择的选项是：{}", input);
    match input {
        0 => {
            println!("退出程序");
            process::exit(0);
        }
        1 => {
            println!("删除错误Err图片");
            delete_err_img::delete_err_img();
        }
        2 => {
            println!("压缩图片");
            compress_img::compress_img();
        }
        3 => {
            println!("提取excel文件");
            excel_copy::excel_copy();
        }
        _ => {
            println!("你输入的选项不存在，请重新输入");
            program_root();
        }
    }
}

fn program_tips() {
    let title = r#"
    0. 退出程序；
    1. 删除错误Err图片；
    2. 压缩图片； 
    3. 提取excel文件；
    "#;
    println!("---------请选择你的选项---------");
    println!("{}", title);
    println!("---------请选择你的选项---------");
}
